<?php

//
//  Copyright (C) 2004-2006  Autodesk, Inc.
//
//  This library is free software; you can redistribute it and/or
//  modify it under the terms of version 2.1 of the GNU Lesser
//  General Public License as published by the Free Software Foundation.
//
//  This library is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
//  Lesser General Public License for more details.
//
//  You should have received a copy of the GNU Lesser General Public
//  License along with this library; if not, write to the Free Software
//  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
//
require_once("config.php");
require_once("utils.php");
require_once(ROOT_DIR_CLASES.'/cCliente.php'); 
require_once(ROOT_DIR_CLASES.'/cClienteBykom.php'); 
require_once(ROOT_DIR_CLASES.'/MisRutas.php');
require_once 'JSON.php';

class QueryMisRutas{
	private $args = null;
	
	function __construct($args){
		$this->args = $args;
	}

	function Execute(){
		$result 	= array();
		$iCuentaId	= $this->args['CUENTAID'];
		$iObjetivo 	= $this->args['OBJETIVO'];
      	if ($this->args["ISBYKOM"]){
      		$rutasRegistradas = BykomCliente_byk::getMisRutas($iCuentaId, $iObjetivo);
      	}else{
      		$rutasRegistradas = BykomCliente::getMisRutas($iCuentaId, $iObjetivo);
      	}
        for($i = 0;  $i < $rutasRegistradas->cantidad() ; $i++ ) {
			$miRuta = new MisRutas();
			if ($this->args["ISBYKOM"]){
				$puntosPorRuta = BykomCliente_byk::misPuntosRutas($rutasRegistradas->campo('id',$i));
			}else{
				$puntosPorRuta = BykomCliente::misPuntosRutas($rutasRegistradas->campo('id',$i));
			}
			
			$miRuta->id 		= $rutasRegistradas->campo('id',$i);
			$miRuta->nombre 	= $rutasRegistradas->campo('nombre',$i);
			$miRuta->descripcion= $rutasRegistradas->campo('descripcion',$i);
			$colorexa 			= dechex($rutasRegistradas->campo('color',$i)); //convertimos el color de Decimal a Hexa
			$colorexa 			= '000000'.$colorexa;
			$colorexa 			= substr($colorexa, strlen($colorexa)-6);
			$miRuta->color 		= $colorexa;			
			$miRuta->cuentaId 	= $rutasRegistradas->campo('cuentaId',$i);
			$miRuta->objetivo 	= $rutasRegistradas->campo('objetivo',$i);
			if($this->args["ISBYKOM"]){
				$miRuta->tolerancia = $rutasRegistradas->campo('tolerancia',$i);
			}
			
			for ($j = 0; $j < $puntosPorRuta->cantidad(); $j++){
				$miRuta->putPoint($puntosPorRuta->campo('latitud',$j),$puntosPorRuta->campo('longitud',$j));
			}
        	array_push($result, $miRuta);
		}
		return $result;
	}
}
?>